The present disclosure relates generally to computing devices. More particularly, the present disclosure relates to generating warm standby images of applications via external references of application threads in multiple computing device environments, such as in server cluster environments.
Common types of computing devices are desktop computers and server systems, with server systems frequently configured in a network comprising numerous servers. Computer resources in the network may be configured in a redundant fashion for fault tolerance. One such technique involves a so-called “cluster” configuration wherein a given node of the network and its associated resources (e.g., its processor and disk drives) are essentially “mirrored” to ensure redundancy. A high availability (HA) cluster typically includes multiple servers that host one or more applications. In the event of a failure of a server, another server of the cluster will take over a hosted application by either resuming it from a point in runtime (checkpoint) or by restarting it. Furthermore, clusters for application management may perform load balancing. Such clusters may manage applications and keep a certain number of instances of an application active, or provide further servers for the cluster with the goal of satisfying performance criteria, such as data throughput or processor usage
The operating environment of an application managed by a cluster is commonly referred to as “resource group”. A resource group may consist of applications, hardware devices, and operating system configuration settings that are used by the application during runtime. The configuration settings may include, for example, network addresses, file systems, and disks, which are managed as a unit by the cluster services. These resources are said to be in a “group” because it may be necessary that the resources move together in a coordinated manner to the same backup system. In other words, the resources in a resource group may need to stay together or be collected on the same computer at all times. Typically, a user or system administrator defines the contents of a resource group.
In clusters that manage applications, such as for high availability or load balancing, a warm standby state for an application means that the application has been started and initialized to some degree such that the application may start performing work after minimal delay. In the current state of the art, standby states of applications are not commonly employed in clusters because, for such state, application designers generally have to make provisions during application design.